Method for Reducing the Power Consumption of a Mobile Device

ABSTRACT

Where a communications device maintains multiple wireless connections to other devices and networks which use slotted communications protocols, the slots used by those protocols are arranged so as to minimize the power consumed by the device. Where multiple radios are used, power is minimized by avoiding using radios at the same time when those radios are likely to interfere with each other. Slots used by communication protocols can also be selected to maximize the time that the communications device can spend in low power mode.

The present invention relates to a method for reducing the powerconsumption of a mobile device and in particular, to a method forimproving power management of any device that operates with wirelesscommunications which uses multiple radios and/or services multipleaccounts.

It has long been known that the use of slotted protocols improves theefficiency of networked communications using a shared communicationmedium. The principle was first established at the University of Hawaiiin the development of the slotted Aloha protocol used in the first everwireless computer network (see “Excess capacity of a slotted alohachannel” by Norman Abramson, ARPANET Satellite System Note 26 12735,Stanford Research Institute, November 1972) and was incorporated fromthere into many subsequent network protocols.

The basis of the slotted protocol is that all transmissions over theshared medium used for network communications are required to consist ofpackets that must be completely transmitted during a series of fixedtime slots, with the slot scheduling determined by means of timerssynchronized between all participating entities. This method is twice asefficient as non-slotted protocols, which allow transmission over theshared medium to commence at any time. This is because slotting halvesthe probability of two or more entities trying to use the network at thesame time, which results in packet collision and subsequentretransmission.

Such protocols are widely used in modern wireless communications, asshown the attached figures. FIG. 1 shows the GSM protocol; FIG. 2 showsthe UMTS protocol; FIG. 3 shows the Bluetooth protocol, while FIGS. 4and 5 show versions of the 802.11 protocol. Finally, FIG. 6 shows theDECT protocol used in modern digital cordless telephony.

Recent developments in wireless communications have additionally madeuse of the fact that slotted protocols can be used to implement powersaving strategies. These can be used by all modern computing deviceswhich include the capability of acting as a mobile terminal (MT) whenconnected to wireless communications networks. Such device include,without being limited to, desktop and laptop computers, Personal DigitalAssistants (PDAs), mobile telephones, smartphones, set-top boxes andgames consoles, together with converged devices incorporating thefunctionality of one or more of the classes of device already mentioned,as well as many other industrial and domestic electronic appliances suchas digital cameras and digital music players.

Power-saving strategies are especially important for battery operatedmobile terminals, for which power is a scarce resource and power savingis a key design and usability constraint. The requirements of wirelesscommunication protocols are typically one of the major drains on thebatteries of such devices. The considerations involved are well statedby Chen, Sivalingam and Agrawal

-   -   “Mobile computers typically have limited energy for computing        and communications because of the short battery lifetimes.        Conserving battery energy in mobiles should be a crucial        consideration in designing protocols for mobile computing. This        issue should be considered through all layers of the protocol        stack, including the application layer.” from Performance        comparison of battery power consumption in wireless multiple        access protocols, in Wireless Networks 5 (1999) pp 445-460)

It should however be noted that while there is apparently greaterutility in implementing power-saving strategies on battery-operatedmobile devices, there are considerable benefits to be gained by savingpower even on devices that utilize mains electricity, for where suchelectricity is generated from non-renewable or fossil sources, it isknown to contributed to greenhouse gases and global warming. A smallsaving in one device, when agglomerated over all the applicable devices,can result in a substantial global saving.

Possibly, the simplest such power-saving strategy that can be utilizedwith a slotted protocol can be implemented at the device level andallows devices to turn off the radios used for wireless communicationsduring time slots when it is known that no communications will occur.

-   -   “One possible way to reduce receiver power-on time is to        broadcast a data transmission schedule for each mobile. This        will enable a mobile to switch to standby mode until its        allotted slots.” from Chen et al, op. cit.    -   “Letting nodes sleep is the most effective way to conserve        energy in a wireless network . . . a periodic beacon . . .        provides a coarse-level synchronization and denotes the start of        a superframe. A superframe has two parts: a reservation window,        during which potential senders announce transmission requests,        and a data transmission window, during which the actual packet        transmissions take place. Receivers can then sleep for most of        the second part, except for the periods when announced        transmissions occur.” from ‘Tradeoff Analysis of PHY-aware MAC        in Low-Rate, Low-Power UWB networks’ Alaeddine El Fawal,        Jean-Yves Le Boudec, Ruben Mers, Bosidar Radunovic, Jorg Widmer,        and Gian Mario Maggio, EPFL Technical Report IC/2005/032

One instance of designing protocols especially for mobile computing canbe found in “A Short Look on Power Saving Mechanisms in the Wireless LANStandard IEEE 802.11”, in J. M. Holtsmann and M. Sorsi, editors,Advances in Wireless Communications, pp. 219-226, Kluwer, April 1998.This describes how devices may turn off their radios between time slotswhen using 802.11 Wireless Ethernet (WiFi) protocols. Similar techniquesare used in Bluetooth communications, which operates in the samefrequency bands as 802.11.

A general account of a number of techniques for reducing the powerconsumption networked computing devices can be found in a 1997presentation for the Center for Embedded Computer Systems at theUniversity of California by Rajesh K. Gupta ‘Power ManagementConsiderations for Networked Devices’ (ICCAD 1997 TUTORIAL Part II:Basics of Wireless Communication Systems’); this can be found online athttp://www.ics.uci.edu/˜rgupta/talks/vlsi02/vlsi02-power.ppt.

The measures referred to above deal with how a device can save powerwhen utilizing a single wireless connection. However, there is no priorart that addresses the problems of maximizing power savings when adevice is making use of multiple wireless connections. The perceptionbehind this invention is that maximizing the power savings on eachindividual wireless connection does not necessarily maximize the powersavings for the device as a whole.

This can be seen most clearly in the hypothetical case of a wirelesscomputing device which is maintaining two wireless connections, W₁ andW₂ over two separate radios with two separate protocol stacks. It is afact that activity on such devices tends to occur in bursts; most of thetime they are in some type of low power mode, only waking up atintervals (determined by the slots allocated by the relevant protocols)to see if there is any need to communicate. Let us further assume thatthere are ten possible time slots, T₁ to T₁₀ available to such a device.There are two scenarios that can be considered:

-   -   1. The first scenario is where W₁ and W₂ do not interfere with        each other, and are both able to function at the same time. If        this is the case, there are power savings to be made by having        both connections share the same time slot, as the computing        device would then only need to come out of low power mode for a        single slot. Were W₁ and W₂ to be using different time slots,        the power consumption would effectively be doubled as the device        would need to come out of low power mode for two time slots.    -   2. The second scenario, which more realistically applies to        modern computing devices, is where W₁ and W₂ do interfere with        each other; attempting to use radio receivers and transmitters        simultaneously in mobile devices when they are separated by only        a few millimetres is extremely likely to be unsuccessful for        this reason. If this is the case, there are power savings to be        made by ensuring that both connections do not share the same        time slot, as the computing device would then have come out of        low power mode and activated both radios only to have each of        their communications fail due to interference.    -   Where W₁ and W₂ cannot share the same timeslot, it is        additionally possible that even more power savings could be made        by making use of adjacent time slots such as T₃ and T₄ rather        than separated slots such as T₂ and T₇; this is because in the        former case the device would only need to come out of low power        mode once, while in the latter case the substantial overheads of        entering and leaving low power mode would be incurred twice.

Thus it can be seen that it is not possible to optimize power usage in acomputing device operating multiple radios by considering eachconnection in isolation; optimization can only be arrived at by takingall the connections together.

It should be noted that where there are more that two radios, some ofwhich can share the same timeslots and some of which cannot share thesame timeslots, both of the above scenarios may operate simultaneously.

A common example of a computing device which maintains multiple wirelessconnections would be a mobile telephone with connections to a cellularnetwork, to an 802.11 wi-fi network and also to Bluetooth. It isexpected that many other additional wireless connections will becomeavailable to such computing devices in the future, such as telephonesthat are able to maintain multiple simultaneous cellular connections(such as two or more GSM services or a mixture of GSM and CDMAservices). Currently, simultaneous multiple accounts are not managedwell by mobile telephones, and typically require two separate devices.

In summary, the problems in power optimization posed by computingdevices with multiple wireless standards have not hitherto been dealtwith.

Though there has been some innovation in the area of devices withmultiple wireless connections from Broadcom Corporation, theirInConcert™ technology is aimed at maximizing throughput when using802.11 and Bluetooth networks, which use the same frequencies; it shouldbe noted that this is a different problem which requires a differentsolution, and is not related to power reduction nor with managingmultiple accounts.

According to a first aspect of the present invention there is provided amethod of minimizing the power consumption of a communications devicemaintaining multiple wireless connections to other devices and networks,the method comprising simultaneously coordinating the arrangement of theslotted communications protocols used by each of the said wirelessconnections.

According to a second aspect of the present invention there is provideda communications device arranged to operate in accordance with a methodof the first aspect.

According to a third aspect of the present invention there is providedan operating system for causing a communications device to operate inaccordance with a method of the first aspect.

Embodiments of the present invention will now be described, by way offurther example only, with reference to the accompanying drawings, inwhich

FIGS. 1 to 6 show various communications protocols;

FIGS. 7 and 8 show radio repetition rates;,and

FIG. 9 shows how data for each radio type is organized as a hierarchy inaccordance with an embodiment of the present invention.

An ideal situation would be for wireless communication protocols toallow mobile terminals to negotiate with other elements in the networkinfrastructure in order to define the slots that they will listen on.However, the allocation of slots in existing protocols is eitherpre-defined or, where variation is allowed, this is normally doneoutside the control of the mobile terminal; for example, this is part ofthe functionality provided in the Base Station Controller/BaseTransceiver Station in 3GPP cellular networks. In the absence of anyframework for influencing slot allocation, a mobile terminal has toselect the best match from the various options available.

In normal use, where multiple radios are known to interfere with eachother, this will quite possibly involve dropping some paging slots ifthere is a clash. It should be noted that there is no reason why thiscannot be done. For all slotted protocols, there is some degree offlexibility and redundancy in the usage of the slots allocated, and fora mobile terminal to miss a transmission in one or more slots is notcritical.

Therefore, provided it is possible to control the available radiointerfaces, a computing device implementing multiple slotted protocolscan arrange to do so in a way that optimizes power usage.

The current generation of computing devices enabled for wirelesscommunications (such as cellular, WiFi and Bluetooth) generally rely ondedicated hardware to handle the radio related aspects of theiroperation. Typically, these consist either of specific chipsets or elseof customized Application Specific Integrated Circuits (ASICs) for eachradio interface. These handle the modulation and demodulation of signalstogether with much of the lower levels of the communications protocolsassociated with the communication. The implementation of the protocolsin dedicated hardware is predetermined by the manufacturer and does notoffer the flexibility needed to adjust the parameters of thecommunications protocols in use to take advantage of this invention.

Therefore a preferred implementation of this invention makes use ofcomputing devices with one or more generic Software Defined Radiosrather than dedicated hardware. A Software Defined Radio (SDR) is onethat handles all the modulation and demodulation of wireless signals insoftware rather than relying on any dedicated hardware circuitry; it isanticipated that in the future, computing devices will be able toutilize wireless communications methods by means of SDR which wouldotherwise only be accessible if a suitable dedicated radio ASIC had beenincluded in the device at manufacture time. The Software Defined RadioForum (http://www.sdrforum.org/) exists to promote and develop thistechnology.

It should be noted that while SDR technology lends itself to theimplementation of this invention, the description and claims containedherein are not intended to preclude any implementations that are basedon more flexible dedicated hardware solutions.

The basic elements of a system implementing this invention are asfollows:

-   -   The computing device is provided with a respective applications        programming interface (API) for each radio. The API supplies        information and methods relating to the controlling of its power        usage, together with information and methods which define and        control its receipt of paging requests from other wireless        devices. An example API is provided below.    -   The computing device is additionally provided with a single        software, component that is aware both of the power constraints        to which the device is subject and also of the communication        networks and services to which the user wishes to remain        connected. This information may be provided by the user either        directly or indirectly (via a link to overall settings such as        user profiles) or may be arrived at programmatically, using        inbuilt rules.    -   This software component can also be provided with other items of        information which may affect the operation of the device.        Although the aim is to reduce the total power consumption,        manipulating the standard workings of a communication protocol        can affect other aspects of performance, such as Quality of        Service (QoS). As an example, a computing device that polls the        airwaves for signals ten times per second is going to be able to        provide a quicker response than a computing device that polls        for signals once every second. The ability of the invention to        take account of additional information relating to issues such        as QoS, which vary depending on the circumstances and needs of        the user, is considered to be one of the advantages of this        invention.    -   The various slotted communication protocols can then be        evaluated to decide on an optimal selection of paging slots for        which the radios on the device will be woken up; the APIs        provided for each radio are used to implement the consequent        strategy.

A preferred implementation of this invention on a computing device whichitself implements low-power mode may be to pre-process all the availabledata in order to ensure that no radio interferes with any other radio,and that the time spent in sleep or idle mode was as long as possible.

Note that if the device is maintaining wireless connections to multipleaccounts on services such as cellular networks, the single softwarecomponent referred to above will need to ensure that the relevantidentities on the appropriate networks have all been registered beforesetting up exclusive slots to monitor each account.

Furthermore, ‘interleaving’ the power on times of the various radioswill be essential when software defined radio is used (either singleconverter or multiple IF selection), as there is effectively a singlepiece of hardware.

This utility can be extended if the computing device or MT can definethe slots it will listen on. At present the slot structure is definedeither by the protocol or where variation is allowed, this is normallyin the base station controller (BSC) and/or the base transceiver station(BTS). Without this, the best match of the various options will have tobe selected, perhaps dropping some paging slots when there is a clash.

An API to control multiple software defined radios in such a way as tominimize the power consumption will now be described. This control isachieved by only operating radios one at a time. The common ‘burst’ modeactivities of the radios being considered allows this mechanism to beimplemented.

Radios may be operated intermittently to reduce power consumption. Thesebursts of activity may be to send or receive a beacon (synchronize,scan—depends on the radio standard) or to send or receive data.

Radios may have a range of repetition rates that are continuouslyvariable between two ranges as shown in FIG. 7 or they may have only alower limit as shown in FIG. 8, in which case the upper limit would bethat the radio can be on continuously.

A radio may also have a set of defined rates instead of a range. It mayalso have a set of defined frequencies, phase and number of cycles.These may be different for different modes and in different rates.

Overview of the API

The API contains two parts. The first part is the set of data structuresthat contain data about the radios available to be controlled. Thesecond part is the set of commands that most radio systems will beexpected to respond to. This second part is based on the commands usedin the Software Defined Radio Commercial Handset guidelines(SDRF-04-A-0006-V0.0 25^(th). August 2004) issued by the SDR Forum(www.sdrforum.org). Note there are no standards for the data structuresthat define the possible configurations of the radios.

Inquiry Tree

A radio subsystem can be queried (e.g. via the operating system of themobile communications device) to determine the characteristics of eachof the radios. Below the level of this API there may be a ‘plug in’mechanism to allow different physical radio hardware to represent itselfas part of the radio subsystem.

The radio system is interrogated and the list of radios that thesubsystem supports can be enumerated. The data for each radio type isorganized as a hierarchy as shown in FIG. 9.

The radio subsystem inquiry tree is enumerated under program control.This interrogation may be instigated by the radio subsystem requestingit. This allows for new devices being plugged in. At present the SDRforum does not include a radio initiated request for interrogation. Thesystem has to issue get_config commands.

Combined Repetitions

The radios are enabled either by user control or limited byenvironmental controls. For each of the radios that are enabled a set ofrepetition rates are found to allow each of the radios to be switched ononly when no other radio is on. This mechanism is common to many of theuse cases described below.

Use Cases

These use cases are the actions from the upper levels. In particular theenabling of a radio is not to be confused with the low level enablecommand which effectively powers on the radio. At this level this islikely to be a user command that has enabled or disabled the use of aspecific type of radio (e.g. switching on Bluetooth).

Startup

-   -   1. All the radios are enumerated,    -   2. Read the parameters for each radio found    -   3. Find environmental limits in force (airplane, low power etc.)    -   4. Find repetition pattern for all allowed radios    -   5. Set radio patterns or repetitions    -   6. Enable radios    -   7. Start radios

Radio Removed

-   -   1. Find repetition pattern for remaining radios    -   2. If existing radios are in use, defer change in repetitions.

Radio Disabled

-   -   1. Stop radio.    -   2. Disable radio.    -   3. Remove radio from repetition pattern    -   4. Find new repetition pattern for remaining radios    -   5. Set radio patterns or repetitions

Radio Enabled

-   -   1. Find environmental limits in force (airplane, low power etc.)    -   2. Find new repetition pattern for all allowed radios    -   3. Set radio patterns or repetitions    -   4. Enable radio    -   5. Start radio

Radio Inserted

-   -   1. Read the parameters of the new radio    -   2. Find environmental limits in force (airplane, low power etc.)    -   3. Find repetition pattern for all allowed radios    -   4. Set radio patterns or repetitions    -   5. If existing radios are in use, defer change in repetitions.    -   6. Enable new radio    -   7. Start new radio

Low Power

-   -   1. Find radios that are to be used    -   2. Stop and disable all other radios    -   3. Find repetition pattern for radios    -   4. Set radio patterns or repetitions

Other compliance based use cases may require activities above the radiosubsystem. The control requests below allow for these, but the subsystemwill not necessarily respond to all aspects. For example it may benecessary to use only certain frequency channels for Bluetooth whenvisiting certain countries.

Entering a Radio Restriction Area (Airplane Mode)

-   -   1. Receive an airplane mode request (see below)    -   2. Stop and possibly disable radios not allowed    -   3. Find repetition pattern for remaining radio    -   4. Set radio pattern or repetition

Entering Radio Off Area (Hospital)

-   -   1. Receive a beacon receive mode command    -   2. Stop and possibly disable all radios (not necessarily low        power)    -   3. Enable beacon reception

Control Requests

These requests are short strings that can be supplied as push messages.This allows airplane mode to be imposed once a device enters an area bypushing the request on one of the radio channels. Interleaving radioswill also require monitoring and debugging control requests.

Lowest Power

All radios at lowest repetition rate as well as lowest power output.

Airplane Mode

Only certain radios are allowed. This request sends the radios allowed.See the beacon setting for the situation where only a specific radio isallowed.

All Radios Off

This is reset manually by the user.

Promiscuous Mode

A radio connects to a service all the time or at the maximum rate. Thisallows the device to act as a monitor for that radio channel

Monitor Mode

Link to a service and report data transfers via another service. Thiscan be used to test operation of a protocol when the device has no othermeans of connection like a serial, IrDA, USB port. The reporting may bethe complete data or just a summary of the monitored link or service.

Report Mode

Send the N last control requests. This requires the subsystem tomaintain the last N requests so it is preferable that a maximum valuefor N is defined. As these requests are small, there could be a largevalue for N (e.g. 100,000).

Beacon Listen

Set a radio to listen for a beacon. This mode can be used to indicatewhen the radio has left a region.

Beacon Send

Set a radio to send a beacon. This mode can be used to indicate if adevice leaves a region. This mode can also be used for securitypurposes.

Lower Level Command

These commands control the radios and the subsystem more directly. Theseare equivalent to the commands proposed by the SDR forum.

Radio Enabled

This is different from the radio transmitting or receiving. Theconfiguration is set in the radio and it is ready to operate: a startcommand starts the radio.

Radio Disabled

The radio is no longer ready to be used and should be consuming nopower.

Radio Pattern

Some radios may have intelligence and can be set with high levelparameters. Others will require that the waveform or burst pattern isset explicitly. This command sends frequency, phase, modulation, cycles,time etc. in the format that is appropriate to the radio. The SDR forumcommand is set_config.

Simple Repetition

Sends the rate where the other radio components have either been set bythe radio pattern command or cannot be set. This is for radios that onlyhave repetition rates, i.e. those radios that are not frequency hopping.The SDR forum commands do not discriminate and so the set_config commandis the only one available.

Enumerate Radios

Read the inquiry tree and load up the radio parameters. The SDR forumcommands are get config and capability exchange. There is currently anundefined overlap in these two commands.

Synchronize Radios

This takes a list of radios and make sure that the repetition rates aresynchronized. This may be necessary so the two radios work as a network,forwarding packets. Although this functionality is discussed in the SDRforum, there are no low level commands specified.

Many advantages accrue through the use of this invention, including:

-   -   It enables a reduction of power consumption and avoids the        wastage of power that would otherwise occur when a device is        concurrently connected to multiple wireless standards; this is        applicable to all classes of devices, whether mobile or mains        powered.    -   As applied to software defined radio, it allows operation on        multiple wireless standards.    -   When used on communication devices such as cellular telephones,        it allows multiple concurrent accounts for wireless delivered        services.

Although the present invention has been described with reference toparticular embodiments, it will be appreciated that modifications may beeffected whilst remaining within the scope of the present invention asdefined by the appended claims.

1. A method of minimizing the power consumption of a communicationsdevice maintaining multiple wireless connections to other devices andnetworks, the method comprising simultaneously coordinating thearrangement of the slotted communications protocols used by each of thesaid wireless connections.
 2. A method according to claim 1 in which thedevice contains one or more radios used for the purpose of maintainingseparate wireless connections to other devices and networks.
 3. A methodaccording to claim 1 in which the device contains one or more radioswhich can be shared by more than one wireless connection to otherdevices and networks.
 4. A method according to claim 1 in which any oneor more of the said radios are software defined radios.
 5. A methodaccording to claim 1 in which the slotted protocols are arranged in suchas way as to ensure that those radios which do not interfere with eachother share the same time slots.
 6. A method according to claim 1 inwhich the slotted protocols are arranged in such a way as to ensure thatthose radios which do interfere with each other do not share the sametime slots.
 7. A method according to claim 1 in which the slottedprotocols are arranged in such a way as to ensure that adjacent timeslots are used wherever possible.
 8. A method according to claim 1 inwhich any one or more of the radios are turned off and powered down whennot in use.
 9. A method according to claim 1 in which not all slotsavailable to the communications protocols are used.
 10. A methodaccording to claim 1 in which each radio is provided with an API whichcan be used both to control its operation and provide informationrelating to its use.
 11. A method according to claim 1 in which thecommunications device is provided with a single component that a. canobtain or be provided with information relating to the power constraintsto which the device is subject together with other items of informationwhich may constrain its operation including but not limited to qualityof service and costs; and b. can obtain or be provided with informationrelating both to the communications networks and/or devices to which thedevice wishes to remain connected and to the protocols used tocommunicate with those networks and/or devices; and c. is enabled toevaluate the above information and decide on an selection of slots to beused by the protocols in use which is optimized for the constraints towhich the device is subject.
 12. A method according to claim 1 in whichthe communications device is enabled to define the slots used by any orall of the communications protocols in use.
 13. A method according toclaim 1 in which the communications device is a mobile telephone orother device used to access cellular telephone networks.
 14. A methodaccording to claim 13 in which the communications device maintainsmultiple accounts on cellular telephone networks and in which eachaccount requires a separate wireless connection.
 15. A computing devicearranged to operate in accordance with the methods as claimed inclaim
 1. 16. An operating system for causing a computing device tooperate in accordance with the methods as claimed in claim 1.